'''

-a 文件存在
-b 文件存在，是块特殊文件
-c 文件存在，是一个字符特殊文件
-d 文件存在并且是一个目录
-e 文件存在（与-a相同）
-f 文件存在并且是常规文件
-g 文件存在并设置了setgid（2）位
-G 文件存在，并且具有与此进程相同的组ID
-k 文件存在并设置了其粘滞位
-L 文件存在，是一个符号链接
-n 字符串长度不为零
-o 已启用命名选项
-O 文件存在，并由此进程的用户ID拥有
-p 文件存在，是先进先出（fifo）特殊文件或命名管道.
-r 文件存在并且当前进程可以读取
-s 文件存在，其大小大于零
-S 文件存在并且是套接字
-t 文件描述符号fildes打开并与终端设备关联
-u 文件存在并设置了其setuid（2）位
-w 文件存在，并且可由当前进程写入
-x 文件存在，并且可由当前进程执行
-z 字符串长度为零
'''

'''
变量	含义
$0	当前脚本的文件名
$n	传递给脚本或函数的参数。n 是一个数字，表示第几个参数。例如，第一个参数是$1，第二个参数是$2
$#	传递给脚本或函数的参数个数
$*	传递给脚本或函数的所有参数
$@	传递给脚本或函数的所有参数。被双引号(” “)包含时，与 $* 稍有不同
$?	上个命令的退出状态，或函数的返回值。成功返回0，失败返回1
$$	当前Shell进程ID。对于 Shell 脚本，就是这些脚本所在的进程ID

$* 和 $@ 都是将参数一个一个返回
"$*"将所有参数当做一个整体字符串返回 , "$@"将参数一个一个返回
'''